package com.kim.logs.bean;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.zxp.esclientrhl.annotation.ESMetaData;

import java.io.Serializable;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

@Data
@AllArgsConstructor
@NoArgsConstructor
@ESMetaData(indexName = "kim_operator_logs", number_of_shards = 5, number_of_replicas = 0, printLog = true)
public class OperatorLog implements Serializable {
    /**
     * 类名
     */
    private String beanName;
    /**
     * HTTP方法
     */
    private String requestMethod;
    /**
     * 请求参数
     */
    private String params;

    private String userName;

    private String userId;
    /**
     * 请求IP
     */
    private String remoteAddr;
    /**
     * 请求URL
     */
    private String uri;
    /**
     * 接口執行耗時（毫秒）
     */
    private long excuteTime;
    /**
     * 请求结果
     */
    private String result;
    /**
     * 請求模塊
     */
    private String module;
    /**
     * 接口功能描述
     */
    private String api;
    /**
     * 所属系统
     */
    private String system;
    /**
     * 请求类型【增删改查】
     */
    private Integer type;
    /**
     * 请求时间
     */
    private String time = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy年MM月dd日 HH时mm分ss秒SSS毫秒"));
    /**
     * 异常名称
     */
    private String excName;
    /**
     * 异常内容
     */
    private String excMessage;
    /**
     * 创建时间
     */
    private Long createTime = System.currentTimeMillis();
}
